home *** CD-ROM | disk | FTP | other *** search
/ Tech Arsenal 1 / Tech Arsenal (Arsenal Computer).ISO / tek-06 / an102b.zip / AN102B.TXT < prev    next >
Text File  |  1991-12-11  |  35KB  |  753 lines

  1. Running SQL Server in the NetWare Environment
  2.  
  3.                                                                  ▄
  4.                 Running SQL Server in the NetWare Environment    █
  5.                                                                  █
  6.              ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
  7.  
  8.                                 Willie Tejada
  9.                         Corporate Integration Manager
  10.                          Systems Engineering Division
  11.  
  12.                ╔═════════════════════════════════════════════╗
  13.                ║      PgDn to Scroll or follow link for      ║
  14.                ║            Table of Contents                ║
  15.                ╚═════════════════════════════════════════════╝
  16.  
  17.                                   Abstract:
  18.  
  19.      This Application Note explains how to install Microsoft's SQL Server v1.0
  20.      and v1.1 in a NetWare environment, using Novell's Named Pipes support for
  21.      both OS/2 and DOS clients. It summarizes some of the issues involved in
  22.      using Named Pipes for client-server applications and details the
  23.      architecture of SQL Server under NetWare from both the OS/2 and DOS
  24.      client perspective. It also gives a step-by-step procedure for manually
  25.      installing SQL Server v1.0 (designed solely for LAN Manager networks) on
  26.      a NetWare network. Finally, it includes some pointers for running SQL
  27.      Server, querying a database, and diagnosing problems associated with
  28.      Named Pipes connections.
  29.  
  30.  
  31.  
  32.  
  33. Running SQL Server in the NetWare Environment
  34.                                    Contents
  35.  
  36.            Introduction
  37.            The Client-Server Model
  38.            Named Pipes
  39.               Life Cycle of a Named Pipe
  40.            Architecture of SQL Server Under NetWare
  41.               NetWare Requester for OS/2
  42.               NetWare Requester for OS/2 Client Architecture
  43.               NetWare DOS Named Pipes Extender Client Architecture
  44.            NetWare Requester for OS/2 Installation Issues
  45.               Tuning SPX
  46.            NetWare DOS Named Pipes Extender Installation Issues
  47.               Tuning the DOS Named Pipes Extender
  48.                   Maximum Machine Names
  49.                   Maximum Open Named Pipes
  50.                   Maximum Communication Buffers
  51.            SQL Server v1.0 Installation
  52.            SQL Server v1.1 Installation
  53.            Operation Issues
  54.               Starting and Stopping the SQL Server
  55.               Diagnosing Problems with MAKEPIPE and READPIPE
  56.               Querying the SQL Server
  57.            Summary
  58.            Appendix A: Bibliography
  59.  
  60.  
  61.  
  62.      Disclaimer
  63.  
  64.      Novell, Inc. makes no representations or warranties with respect to the
  65.      contents or use of these Application Notes (AppNotes) or of any of the
  66.      third-party products discussed in the AppNotes. Novell reserves the right
  67.      to revise these AppNotes and to make changes in their content at any
  68.      time, without obligation to notify any person or entity of such revisions
  69.      or changes. These AppNotes do not constitute an endorsement of the
  70.      third-party product or products that were tested. Configuration(s) tested
  71.      or described may or may not be the only available solution. Any test is
  72.      not a determination of product quality or correctness, nor does it ensure
  73.      compliance with any federal, state or local requirements. Novell does not
  74.      warranty products except as stated in applicable Novell product
  75.      warranties or license agreements.
  76.  
  77.      Copyright (c) 1991 by Novell, Inc., Provo, Utah. All rights reserved.
  78.  
  79.      As a means of promoting NetWare AppNotes, Novell grants you without
  80.      charge the right to reproduce, distribute and use copies of the AppNotes,
  81.      provided you do not receive any payment, commercial benefit or other
  82.      consideration for the reproduction or distribution, or change any
  83.      copyright notices appearing on or in the document.
  84.  
  85. Running SQL Server in the NetWare Environment
  86. Introduction
  87.  
  88.      In 1989, Novell included support for the Named Pipes application
  89.      programming interface (API) in the NetWare Requester for OS/2. The
  90.      following year, Novell added support for Named Pipes in the NetWare DOS
  91.      Client Shell. This Named Pipes support makes it possible to run
  92.      applications based on Named Pipes in the NetWare environment.
  93.  
  94.      Microsoft's (R) SQL Server is one such application. In most network
  95.      configurations, SQL Server is installed as a LAN Manager service and runs
  96.      as an OS/2 application along with other OS/2 applications such as
  97.      Microsoft LAN Manager, IBM LAN Server, or 3+ Open. The SQL Server
  98.      documentation fully describes the installation and use of the SQL Server
  99.      in a LAN Manager environment.
  100.  
  101.      Microsoft has certified SQL Server for use in the NetWare environment.
  102.      However, prior to  SQL Server v1.1, the installation programs and manuals
  103.      which accompanied SQL Server presumed installation into a LAN Manager
  104.      environment. This Application Note examines the different components of
  105.      NetWare and SQL Server, and explains how to install and configure these
  106.      components in a NetWare environment.
  107.  
  108. Running SQL Server in the NetWare Environment
  109. The Client-Server Model
  110.  
  111.      The client-server model expands the number of distinct pieces of
  112.      applications software needed to support database activity from one to at
  113.      least four. Traditional PC database management systems used the server
  114.      both for data storage and as a distribution facility.
  115.  
  116.      Figure 1 shows four parts of a client-server database application. Part
  117.      1, the client front end, typically is responsible for such tasks as
  118.      presentation, collection, and validation of data. This front end might be
  119.      a custom application written to provide a simple-to-use graphical or text
  120.      user interface.
  121.  
  122.      The front end accomplishes its tasks by passing SQL statements to part 2,
  123.      the interface between the front end and the underlying network protocol.
  124.      This network interface can facilitate network communications for the
  125.      front end application. This part always looks the same to the front end,
  126.      but must be customized to work with specific network protocols. Microsoft
  127.      SQL Server uses the Named Pipes API as its network interface. Novell has
  128.      provided the customization of the interface to the network protocol by
  129.      providing Named Pipes support over Novell IPX/SPX through a Named Pipes
  130.      driver and daemon supplied in the NetWare Requester for OS/2 and through
  131.      a Named Pipes extender for DOS clients. (These components are discussed
  132.      later in this AppNote.)
  133.  
  134.      Part 3 is analogous to part 2, but acts as the interface between the
  135.      database engine and a particular network protocol.
  136.  
  137.      Part 4 is the database engine. It ultimately receives SQL statements
  138.      generated by the client front end and responds to them. To establish a
  139.      successful connection between the front end and the server, parts 2 and 3
  140.      must support the same network protocol.
  141.  
  142. Running SQL Server in the NetWare Environment
  143. Named Pipes
  144.  
  145.      A basic understanding of Named Pipes may provide a useful background on
  146.      how the various components of the SQL Server and NetWare fit together.
  147.      Named Pipes is a high-level API for interprocess communications (IPC).
  148.      Named Pipes provides a method for transferring data between different
  149.      processes across the network or in the same machine. These functions have
  150.      been part of OS/2 since v1.1 Standard and Extended Edition and do not
  151.      require LAN Manager/LAN Server to be installed. As mentioned before, the
  152.      use of Named Pipes shelters both front-end and server applications from
  153.      the underlying transport protocol, allowing applications to run on many
  154.      different networks.
  155.  
  156.      Life Cycle of a Named Pipe
  157.  
  158.      To illustrate how a server-based application works with Named Pipes,
  159.      let's look at how a database server works on an application server using
  160.      Named Pipes. Microsoft's SQL Server is an example of such an application.
  161.      (Named Pipes is not required for server-based applications. Other
  162.      server-based applications use IPCs such as Novell's IPX/SPX or NetBIOS to
  163.      accomplish the same functions).
  164.  
  165.      Figure 2 steps through the life cycle of a Named Pipe. First, a named
  166.      pipe is created on the server side with the DosMakeNmPipe API, and the
  167.      pipe is given a name. Second, the server-based application must connect
  168.      to the pipe using the DosConnectNmPipe API. The Named Pipe server is now
  169.      in a listening state, waiting for a client to establish a connection and
  170.      request its resources.
  171.  
  172.      Third, the client end connects to its end of the pipe by using the
  173.      DosOpen API and submitting the name of the server and the pipe. The Named
  174.      Pipe server receives the client's request and the connection is
  175.      established. If the NetWare Requester for OS/2 is installed on each
  176.      machine, the user must clarify which machine will be the Named Piped
  177.      server and which will be the Named Pipe client. There is a distinction
  178.      between the two: Named Pipe servers broadcast their machine name on the
  179.      network; Named Pipe clients do not.
  180.  
  181.      Fourth, after both sides are connected, they can begin the DosRead,
  182.      DosWrite, or DosTransactNmPipe dialogue. Lastly, when the dialogue is
  183.      complete, the server calls the DosDisconnectNmPipe API, and the client
  184.      performs the DosClose operation. The server can then execute another
  185.      DosConnectNmPipe call and wait for the next client.
  186.  
  187. Running SQL Server in the NetWare Environment
  188. Architecture of SQL Server Under NetWare
  189.  
  190.      Currently, the SQL Server is an OS/2 application and cannot run on a
  191.      NetWare file server. To support SQL Server and other Named Pipes-based
  192.      client-server applications, Novell added support for the Named Pipes API
  193.      to both their OS/2 and DOS client services. This allows OS/2 computers to
  194.      be set up as application servers and communicate in a peer-to-peer
  195.      fashion with client programs running on other workstations. Figure 3
  196.      illustrates a typical SQL Server installation on a NetWare Network.
  197.      Because of the peer-to-peer nature of the Named Pipes support, the
  198.      NetWare server need not be present for the SQL Server to function.
  199.  
  200.      NetWare Requester for OS/2
  201.  
  202.      The NetWare Requester for OS/2 is Novell's client software for OS/2
  203.      workstations. It allows OS/2 workstations to access and use resources on
  204.      a NetWare file server. It also supports Named Pipes and NetBIOS
  205.      communications. The NetWare Requester includes the following components.
  206.  
  207.      Component                          Description
  208.  
  209.      NetWare Spooler                    OS/2 print spooler
  210.  
  211.      LSL driver                         The link support layer (LSL) driver,
  212.                                         part of Novell's Open Data-Link
  213.                                         Interface (ODI)
  214.  
  215.      NIC driver                         An ODI-compliant network interface
  216.                                         card
  217.  
  218.      Novell IPX Protocol                Novell's Internetwork Packet Exchange
  219.                                         (IPX) protocol stack
  220.  
  221.      SPX Protocol                       Novell's Sequenced Packet Exchange
  222.                                         (SPX) protocol stack. This stack is
  223.                                         optional, but required for Named Pipes
  224.                                         support.
  225.  
  226.      Named Pipes Layer                  Named Pipes driver and daemon. 
  227.                                         Requires useof the SPX protocol stack.
  228.                                         A "computername"  parameter is
  229.                                         required when loading the daemon to
  230.                                         configure the OS/2 machine as a Named
  231.                                         Pipes server.
  232.  
  233.      Requester                          NetWare requester drivers and
  234.                                         daemon.Provides I/O redirection for
  235.                                         file, printer, and serial devices to
  236.                                         NetWare servers.
  237.  
  238.      NetBios Layer                      NetBIOS driver and daemon. Not
  239.                                         required forNamed Pipes support.
  240.  
  241.  
  242. NetWare Requester for OS/2 Client Architecture
  243.  
  244.      Figure 4 illustrates the NetWare OS/2 Requester client architecture. The
  245.      NetWare Requester services user requests, such as directory listings and
  246.      logins, as well as application requests, such as file access or print
  247.      service.
  248.  
  249.      OS/2 was designed to be an intelligent workstation operating system. This
  250.      means that when the OS/2 kernel receives a call from an application or a
  251.      user, it is capable of determining if the call is for a local or a remote
  252.      service.
  253.  
  254.      If the call is local, OS/2 will execute the request at the workstation.
  255.      Examples of local requests include accessing files on a local hard disk
  256.      or printing to a local printer.
  257.  
  258.      If the call is remote, such as creating a file or listing a directory's
  259.      contents, the OS/2 kernel passes the request to the NetWare Requester.
  260.      When the NetWare Requester receives the call, it can do one of two
  261.      things: send the request on its way to the file server or hand the
  262.      request to the Named Pipes driver.
  263.  
  264.      If the call is a request for NetWare services (such as file or print
  265.      access), the NetWare Requester translates the request into a NetWare Core
  266.      Protocol (NCP) request. (NCP is the language spoken at the NetWare file
  267.      server.) The NCP request is then passed on to Novell IPX, which takes
  268.      care of the routing of information over the network.
  269.  
  270.      If the call is for Named Pipes, the NetWare Requester passes the call to
  271.      NetWare's Named Pipes driver. Once Named Pipes has completed its
  272.      function, it passes the call to SPX. (Notice the application's Named
  273.      Pipes call is never translated into NCP.) SPX sits on top of Novell's IPX
  274.      and guarantees packet delivery on the network.
  275.  
  276.      During run time, an OS/2 SQL Server client application makes calls to the
  277.      DB-Library, a call-level host language interface. This collection of
  278.      function and procedure calls provides an easy-to-use, uniform, consistent
  279.      interface to the SQL Server for the C programming language.
  280.  
  281.      The DB-Library in turn makes calls to the SQL Server's NetLib interface
  282.      for Named Pipes, which is implemented as a dynamic link library (DLL).
  283.      The DBNMPP.DLL makes Named Pipe calls to the NetWare Requester, which
  284.      passes the calls to the NetWare Named Pipes driver. The NetWare Named
  285.      Pipes driver then makes use of Novell's SPX protocol to communicate with
  286.      a SQL Server on an OS/2 application server.
  287.  
  288.      NetWare DOS Named Pipes Extender Client Architecture
  289.  
  290.      Figure 5 illustrates the DOS client architecture. The NetWare DOS shell
  291.      program works with IPX and the network driver to convert a standalone DOS
  292.      workstation to a network workstation. The NetWare DOS Shell is loaded
  293.      into RAM when access to the NetWare file server is desired.
  294.  
  295.      The shell sits between the operating system (DOS) and the DOS client
  296.      application. The shell intercepts DOS function requests (through
  297.      interrupt 21h) and determines whether the request is for a local or
  298.      NetWare service. If the call is a request for a NetWare services (such as
  299.      file or print access), the DOS shell translates the request into NCP and
  300.      uses the underlying Novell IPX protocol to route the request to the file
  301.      server.
  302.  
  303.      Novell provides several other IPCs to the DOS client, including NetBIOS,
  304.      Named Pipes, and the SPX guaranteed delivery transport. Client-server
  305.      applications may use any of these IPCs. A DOS SQL Server client
  306.      application uses Novell's DOS Named Pipes Extender (DOSNP.EXE),
  307.      implemented as a terminate-stay-resident (TSR) program. As on an OS/2
  308.      workstation, an interface to the SQL Server's Named Pipes interface is
  309.      required. Microsoft provides this static link library as a TSR program,
  310.      DBNMPIPE.EXE.
  311.  
  312.      At run time, the DOS SQL Server client application makes calls to the
  313.      DB-Library. The DB-Library in turn makes calls to the SQL Server NetLib
  314.      interface for Named Pipes (DBNMPIPE.EXE). The DBNMPIPE.EXE TSR makes
  315.      Named Pipes requests that are trapped by Novell's DOS Named Pipes
  316.      Extender (DOSNP.EXE) TSR. As in the OS/2 workstation sequence of events,
  317.      the Named Pipes calls are passed directly to the DOS Named Pipes
  318.      Extender, which then uses the underlying Novell IPX/SPX protocols to
  319.      route the request to the Named Pipes server. (Notice that the DOS SQL
  320.      Server client application Named Pipes calls are never passed through the
  321.      NetWare DOS shell for translation into NCP requests).
  322.  
  323. Running SQL Server in the NetWare Environment
  324. NetWare Requester for OS/2 Installation Issues
  325.  
  326.      Follow the procedures for installation provided in the NetWare Requester
  327.      for OS/2 installation manual, making the following modifications to the
  328.      OS/2 CONFIG.SYS file for SQL Server operation.
  329.  
  330.      Since the default lines added to CONFIG.SYS for the OS/2 Requester do not
  331.      load the SPX protocol stack or Named Pipes support, you must do this
  332.      manually by uncommenting certain lines.
  333.  
  334.      For example, you would remove REM from these lines:
  335.  
  336.           REM DEVICE=C:\directory\SPX.SYS
  337.  
  338.           REM RUN=C:\directory\SPDAEMON.EXE
  339.  
  340.           REM DEVICE=C:\directory\NMPIPE.SYS
  341.  
  342.           REM RUN=C:\directory\NPDAEMON.EXE "computername"
  343.  
  344.      Note that the Named Pipe support layer in the OS/2 Requester is installed
  345.      after the Novell IPX and SPX stacks are loaded. When uncommenting the
  346.      lines to load Named Pipes support, it is important to provide a unique
  347.      "computername" to the Named Pipes daemon. This allows the workstation to
  348.      act as a Named Pipes server and makes the server visible on the network
  349.      for programs like the SQL Server System Administration Facility (SAF). It
  350.      also allows NetWare to imitate the server naming scheme used by LAN
  351.      Manager and indicates that applications will be creating and sharing
  352.      Named Pipes at this application server.
  353.  
  354.      The OS/2 requester diskette for version 1.21 contains two DLLs in a \SQL
  355.      directory that emulate a small subset of Microsoft LAN Manager API calls.
  356.      In particular, these DLLs are required to support the extended
  357.      functionality of the SAF. Note that these DLLs are provided specifically
  358.      for SQL Server applications and so are not automatically installed with
  359.      the OS/2 Requester. You will need to check that these DLLs are installed
  360.      in the OS/2 LIBPATH before using the SAF on an OS/2 server or
  361.      workstation. A README file in the \SQL directory clearly explains what
  362.      needs to be done.
  363.  
  364.      Tuning SPX
  365.  
  366.      The NET.CFG file can include the following SPX parameters under the
  367.      "Protocol Stack SPX" heading:
  368.  
  369.           Protocol Stack SPX
  370.  
  371.                Socket "count"
  372.  
  373.                Sessions "count"  (Note: replace count with a value 256)
  374.  
  375.                SPX Abort timeout "number"
  376.  
  377.                SPX Verify Timeout "number"
  378.  
  379.                SPX Listen Timeout "number"
  380.  
  381.                SPX Retry Count "number"
  382.  
  383.      In order to get the maximum number of Named Pipes connections on the OS/2
  384.      application server, increase the SPX sessions parameter from its default
  385.      of 16 to the maximum of 256.
  386.  
  387.      If there are not enough SPX sessions available, the OS/2 Requester issues
  388.      the following error message:
  389.  
  390.           NPDAEMON:Error SPX listen for connection
  391.  
  392.      For a complete listing of NET.CFG parameters, refer to the installation
  393.      guide under "Reconfiguring the OS/2 Requester."
  394.  
  395. Running SQL Server in the NetWare Environment
  396. NetWare DOS Named Pipes Extender Installation Issues
  397.  
  398.      Installing the DOS Named Pipes support layer is straightforward. The
  399.      Novell OS/2 Requester diskette for version 1.21 contains a \DOSNP
  400.      subdirectory that contains the Named Pipes TSR (DOSNP.EXE). Copy this TSR
  401.      to the network directory on the local workstation (or to the boot
  402.      directory on the NetWare file server for remote-boot systems). In the
  403.      AUTOEXEC.BAT file, insert a line to load DOSNP.EXE immediately after the
  404.      Novell IPX driver and the NetWare Shell. The network software must be
  405.      loaded in the following order:
  406.  
  407.           o    IPX.COM
  408.  
  409.           o    NETx.COM
  410.  
  411.           o    DOSNP.EXE
  412.  
  413.           o    DBNMPIPE.EXE (provided with SQL Server)
  414.  
  415.      Tuning the DOS Named Pipes Extender
  416.  
  417.      To fine tune the NetWare DOS Named Pipes Extender, set the following
  418.      options in the SHELL.CFG file. (You can rename this file NET.CFG.)
  419.  
  420.      Maximum Machine Names
  421.  
  422.      The NetWare DOS Named Pipes Extender maintains a table of Named Pipes
  423.      servers on the network. The maximum machine names option allows the size
  424.      of this table to be adjusted.
  425.  
  426.           NP MAX MACHINE NAMES = number
  427.  
  428.           Replace number with the desired number of Named Pipes servers.
  429.  
  430.           Minimum = 4
  431.           Maximum = 50
  432.           Default = 10
  433.  
  434.      Maximum Open Named Pipes
  435.  
  436.      This option specifies the number of pipes that can be opened. This number
  437.      is the total number of open pipes.
  438.  
  439.           NP MAX OPEN NAMED PIPES = number
  440.  
  441.           Replace number with the desired number of open named pipes.
  442.  
  443.           Minimum =4
  444.           Maximum = 128
  445.           Default = 4
  446.  
  447.      Maximum Communication Buffers
  448.  
  449.      The NetWare DOS Named Pipes Extender requires communication buffers for
  450.      transmitting data to and from the Named Pipes server. This option
  451.      specifies the number of buffers.
  452.  
  453.           NP MAX COMM BUFFERS = number
  454.  
  455.           Replace number with the desired number of communication buffers.
  456.  
  457.           Minimum = 4
  458.           Maximum = 40
  459.           Default = 6
  460.  
  461.           NOTE:     You should specify a minimum of two buffers per open pipe;
  462.                     however, as the number of pipes increases, this number can
  463.                     be reduced.
  464.  
  465. Running SQL Server in the NetWare Environment
  466. SQL Server v1.0 Installation
  467.  
  468.      The installation program for Microsoft SQL Server v1.0 was designed
  469.      strictly for LAN Manager networks. You cannot use the setup program that
  470.      accompanies the SQL Server v1.0 if you are installing on a non-LAN
  471.      Manager network. You must perform manual installation of the SQL Server
  472.      v1.0. You'll need at least 8MB of RAM and at least 20MB of free disk
  473.      space on your hard disk. Here's how to do it.
  474.  
  475.      1.   Create the SQL Server directory structure by creating the following
  476.           directories (use the appropriate drive letter):
  477.  
  478.           C:\SQL
  479.  
  480.           C:\SQL\BINP
  481.  
  482.           C:\SQL\DATA
  483.  
  484.           C:\SQL\DLL
  485.  
  486.           C:\SQL\INSTALL
  487.  
  488.           C:\SQL\LOG
  489.  
  490.      2.   Copy the SQL Server files from the OS/2 release diskettes.
  491.  
  492.           o    Copy all .EXE and .HLP files to the C:\SQL\BINP directory.
  493.  
  494.           o    Copy DBLIBP.DLL and MSHELP.DLL to the C:\SQL\DLL directory.
  495.  
  496.           o    Copy all .SQL files to the C:\SQL\INSTALL directory.
  497.  
  498.           Don't worry about the .C, .H, and .LIB files for now. They are part
  499.           of the DB-Library support package, and can be installed directly on
  500.           a workstation where C language programming will be done.
  501.  
  502.      3.   Create the SQL Server executable.
  503.  
  504.           The SQL Server is too big to fit on one diskette. You must
  505.           concatenate two SQLSERVx.EXE binary files into one. To do this,
  506.           change to the C:\SQL\BINP directory, then type:
  507.  
  508.                COPY SQLSERV1.EXE /b + SQLSERV2.EXE SQLSERVR.EXE /b <enter>
  509.  
  510.           You may delete the component files once they are joined.
  511.  
  512.      4.   Modify your PATH and LIBPATH variables.
  513.  
  514.           Add C:\SQL\BINP to your OS/2 PATH statement and C:\SQL\DLL to our
  515.           LIBPATH statement in CONFIG.SYS. Reboot if necessary to allow the
  516.           changes to take effect.
  517.  
  518.      5.   Create the SQL Server master database device file.
  519.  
  520.           Change to the C:\SQL DATA directory. This is where you will create
  521.           the SQL Server master database device (an OS/2 file which contains
  522.           SQL Server databases). Issue the following command:
  523.  
  524.                BLDMASTR /dMASTER.DAT /s5120 /C <enter>
  525.  
  526.           The first parameter is the name of the file and the second parameter
  527.           is the size in 2KB pages (5,120 is the minimum size but you may use
  528.           a larger number if you like). Note that switches for the SQL Server
  529.           utilities are case sensitive (for example, /d means something
  530.           different from /D).
  531.  
  532.           The /C switch instructs BLDMASTR to create a server that is not case
  533.           sensitive (the default is case sensitive). This cannot be changed
  534.           later. Omit this switch if you want to have a case sensitive
  535.           database.
  536.  
  537.      6.   Start the SQL Server.
  538.  
  539.           You are now ready to start the SQL Server for the first time. It
  540.           must be running to complete the remainder of the installation.
  541.  
  542.           From the OS/2 prompt, type (on one line):
  543.  
  544.                SQLSERVR /d C:\SQL\DATA\MASTER /e C:\SQL\LOG\ERROR.LOG <enter>
  545.  
  546.           Remember to provide the complete path names to the master database
  547.           device and error logs. For more information on starting and stopping
  548.           the SQL Server, see "Operation Issues" after the following section.
  549.  
  550.      7.   Build the Master, Model, and Pubs databases.
  551.  
  552.           Run another copy of the OS/2 command processor (the current screen
  553.           group should be tied up by the SQL Server). Change to the
  554.           C:\SQL\INSTALL directory. You are now ready to execute the
  555.           TRANSACT-SQL build scripts that create the complete SQL Server
  556.           database environment.
  557.  
  558.           From the OS/2 prompt, issue the following commands in this order:
  559.  
  560.                ISQL /Usa /P < INSTMSTR.SQL <enter>
  561.  
  562.                ISQL /Usa /P < INSTMODL.SQL <enter>
  563.  
  564.                ISQL /Usa /P < INSTPUBS.SQL <enter>
  565.  
  566.           These commands will each take a few minutes to execute.
  567.  
  568.           NOTE:     If you are performing a remote install, it may be
  569.                     necessary to specify the name of the server on the ISQL
  570.                     command line. Use the /S switch to do so. For example, if
  571.                     the name you passed to the NPDAEMON.EXE program in the
  572.                     CONFIG.SYS was SQL_SERVER, use the following command line
  573.                     to run the INSTMSTR.SQL script:
  574.  
  575.                ISQL /Usa /P /SSQL_SERVER < INSTMSTR.SQL <enter>
  576.  
  577. Running SQL Server in the NetWare Environment
  578. SQL Server v1.1 Installation
  579.  
  580.      Installing SQL Server v1.1 into a NetWare environment is made much easier
  581.      by the use of the SQL Server SETUP program v1.1. In a normal
  582.      installation, SETUP still assumes the existence of a LAN Manager
  583.      environment, and will attempt to install SQL Server as a LAN Manager
  584.      service. At the beginning of the SETUP routine, indicate that you want to
  585.      install the database itself. You will then be asked if you want to
  586.      install SQL Server on a network or on a standalone system. To install the
  587.      SQL Server 1.1 on a non-LAN Manager LAN such as NetWare, you must select
  588.      the standalone install option. Standalone installation of the SQL Server
  589.      is fully documented in the Microsoft SQL Server Installation Guide.
  590.  
  591. Running SQL Server in the NetWare Environment
  592. Operation Issues
  593.  
  594.      Starting and Stopping the SQL Server
  595.  
  596.      You can start the SQL server either directly from the OS/2 command line
  597.      or by adding the SQL Server as a program item under the OS/2 Program
  598.      Manager. Remote starting and stopping of the SQL Server is not possible
  599.      due to the lack of the LAN Manager NET START and NET STOP commands. The
  600.      SQL Server can either occupy a screen group or be run as a detached
  601.      process.
  602.  
  603.      To start SQL Server in its own screen group, use the following command:
  604.  
  605.           sql -d c:\sql\data\master.dat -e c:\sql\log\error.log <enter>
  606.  
  607.      To start SQL Server as a detached OS/2 process, use the following OS/2
  608.      DETACH command (typed on a single line):
  609.  
  610.           detach sqlservr -d c:\sql\data\master.dat  -e c:\sql\log\error.log
  611.           <enter>
  612.  
  613.      The -d parameter is the fully qualified pathname of the SQL Server Master
  614.      database device, which is usually  installed in the \SQL\DATA directory.
  615.      This is the bootstrap device that contains the SQL Server master database
  616.      as mentioned earlier in the SQL Server v1.0 installation procedure. The
  617.      -e parameter is an optional path name of the error log. If this parameter
  618.      is not supplied, output generally goes to the display (this is not
  619.      visible when the SQL Server is running as a detached process).
  620.  
  621.      To stop the SQL Server, you can use the SAF menu option or the
  622.      TRANSACT-SQL SHUTDOWN command. To create an OS/2 command file which will
  623.      stop the SQL Server automatically, first create the following
  624.      TRANSACT-SQL script file with a text editor.
  625.  
  626.           SHUTDOWN GO
  627.  
  628.      Name this file SHUTDOWN.SQL and save it in the \SQL\BINP directory. Then
  629.      create the following OS/2 command file:
  630.  
  631.           @ECHO OFF ISQL -Usa -P,<sa-password. -i c:\sql\binp\shutdown.sql
  632.  
  633.      Save this file under a convenient name, such as STOPSQL.CMD, somewhere in
  634.      your OS/2 PATH. To shut down the SQL Server, simply type "stopsql" at the
  635.      OS/2 prompt. Complete documentation of the use of the ISQL utility and
  636.      TRANSACT-SQL scripts can be found in the Microsoft SQL Server
  637.      Administrator's Guide and Microsoft SQL Server Language Reference.
  638.  
  639.      Diagnosing Problems with MAKEPIPE and READPIPE
  640.  
  641.      A useful method to isolate network problems is to use two diagnostic
  642.      programs that are provided with SQL Server: MAKEPIPE.EXE and
  643.      READPIPE.EXE. These utilities are not described in the SQL Server
  644.      documentation.
  645.  
  646.      On the SQL Server machine, run MAKEPIPE.EXE, which (as the name implies)
  647.      creates a named pipe. MAKEPIPE takes no parameters. From a second OS/2
  648.      machine (or second screen group on the same machine), run READPIPE.EXE.
  649.      This program takes two parameters: the computer name of the machine
  650.      creating the pipe (in the NetWare environment this would be the computer
  651.      name given after the NPDAEMON.EXE parameter in the CONFIG.SYS file) and a
  652.      string of data. Here is the format for this command:
  653.  
  654.           READPIPE /s[SERVER_NAME] /d[DATA_STRING]
  655.  
  656.           NOTE:     Do not put a space between the /s and the server name, or
  657.                     between the /d and the data string. If the Named Pipes
  658.                     server and Named Pipes client are working properly, the
  659.                     screens of both machines should display the data sent and
  660.                     the data received. This is a simple test to see if Named
  661.                     Pipes is working.
  662.  
  663.      Querying the SQL Server
  664.  
  665.      You can perform a simple query of the SQL Server to test the operation of
  666.      your SQL Server. Here's how:
  667.  
  668.      1.   Boot the SQL Server machine and start the SQL Server software.
  669.  
  670.      2.   Boot an OS/2 workstation with the NetWare Requester for OS/2 (with
  671.           SPX and Named Pipes enabled).
  672.  
  673.      3.   Start the System Administration Facility by typing:
  674.  
  675.           SAF <enter>
  676.  
  677.      4.   Press <enter> at the title screen.
  678.  
  679.      5.   Type the name of your SQL Server and press <Tab>. (Note: This is the
  680.           "computer name" given at the time the NPDAEMON.EXE is executed in
  681.           the CONFIG.SYS file.)
  682.  
  683.           "computer name" <tab>
  684.  
  685.      6.   Type the System Administrator user name:
  686.  
  687.           user name <enter>
  688.  
  689.      7.   After the workstation attaches to the SQL Server, select the PUBS
  690.           database by entering:
  691.  
  692.           USE PUBS <Ctrl> <E>
  693.  
  694.      8.   Clear the screen by entering:
  695.  
  696.           <Ctrl> <N>
  697.  
  698.      9.   Enter a query. For eample:
  699.  
  700.           SELECT * FROM AUTHORS <Ctrl> <E>
  701.  
  702.      10.  View the results of the query by typing:
  703.  
  704.           <Ctrl> <F>
  705.  
  706.      11.  Exit the SAF by executing the following keystrokes in this order:
  707.  
  708.           <Alt> <F> <X>
  709.  
  710. Running SQL Server in the NetWare Environment
  711. Summary
  712.  
  713.      With the introduction of SQL Server v1.1, Microsoft has made a conscious
  714.      decision to separate the database functions from the network functions.
  715.      Unlike SQL Server v1.0, SQL Server v1.1 loads the network protocol
  716.      functions as a separate dynamic link library (DLL). This DLL
  717.      implementation paves the way for developers to use network interfaces
  718.      other than Named Pipes (such as Novell IPX/SPX).
  719.  
  720.      Novell will continue to support industry-standard interfaces such as
  721.      Named Pipes, NetBIOS, TLI/Streams, and sockets, allowing distributed
  722.      applications based on these interfaces to function in a NetWare
  723.      environment.
  724.  
  725. Running SQL Server in the NetWare Environment
  726. Appendix A: Bibliography
  727.  
  728.      Books
  729.  
  730.      Microsoft LAN Manager: A Programmer's Guide version 2, Microsoft Corp.,
  731.      1990
  732.  
  733.      Microsoft LAN Manager: Programmer's Reference version 2, Microsoft Corp.,
  734.      1990
  735.  
  736.      A Technical Overview of SQL Server, Advanced Consulting Group,
  737.      Ashton-Tate 1988
  738.  
  739.      Technical Documents
  740.  
  741.      Using Microsoft SQL Server on a NetWare Network, Microsoft Corp., 1989
  742.  
  743.      Installing SQL Server 1.0 Under Novell NetWare, Ashton-Tate Professional
  744.      Services Division, 1989
  745.  
  746.      Articles
  747.  
  748.      Bolt, Robert, "Battle of the DataBase Servers", LAN Technology (January
  749.      1991)
  750.  
  751.      Editor's Note: The author accepts written feedback at FAX (801) 429-5511.
  752.  
  753.